/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package dao;

import beans.AffecteMatiere;
import beans.Matiere;
import beans.Utilisateur;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.List;
import static dao.DAOUtilitaire.*;

/**
 *
 * @author Florian
 */
public class AffecteMatiereUtilisateurDAOImpl implements AffecteMatiereUtilisateurDAO{
    
    private static final String SQL_INSERT = "INSERT INTO affecte_matiere_utilisateur (utilisateur, matiere) VALUES (?, ?)";
    private DAOFactory  daoFactory;
    
    public  AffecteMatiereUtilisateurDAOImpl(DAOFactory daoFactory) {
         this.daoFactory = daoFactory;
    }

    @Override
    public List<Utilisateur> trouverUtilisateurs(Matiere matiere) throws DAOException {
         return null;
       
    }
  
    public void creerAMU(AffecteMatiere amu) {
        
        Connection connexion = null;
        PreparedStatement preparedStatement = null;

        try {
            /* Récupération d'une connexion depuis la Factory */
            connexion = daoFactory.getConnection();
            preparedStatement = initialisationRequetePreparee( connexion, SQL_INSERT, true,amu.getUtilisateur(), amu.getMatiere());
            int statut = preparedStatement.executeUpdate();
            /* Analyse du statut retourné par la requête d'insertion */
            if ( statut == 0 ) {
                throw new DAOException( "Échec de la création de l'examen, aucune ligne ajoutée dans la table." );
            }
            
        } catch ( SQLException e ) {
            throw new DAOException( e );
        } finally {
            fermeturesSilencieuses(preparedStatement, connexion );
        }
        
    }

}
